package com.dc.service;

import com.dc.common.ResponseResultVO;
import com.dc.entity.ro.SysRoleRO;
import com.dc.entity.ro.SysRoleResourceRO;

/**
 * 系统角色接口
 */
public interface SysRoleService {

    /**
     * 新增
     *
     * @param sysRoleRO 新增的数据
     * @return
     */
    ResponseResultVO insert(SysRoleRO sysRoleRO);


    /**
     * 修改
     *
     * @param sysRoleRO 修改的数据
     * @return
     */
    ResponseResultVO update(SysRoleRO sysRoleRO);


    /**
     * 删除
     *
     * @param id 主键id
     * @return
     */
    ResponseResultVO delete(String id);


    /**
     * 查询列表
     *
     * @param sysRoleRO 查询条件
     * @return
     */
    ResponseResultVO selectList(SysRoleRO sysRoleRO);

    /**
     * 查询角色下拉列表
     *
     * @return
     */
    ResponseResultVO selectRoleList();


    /**
     * 修改角色权限
     *
     * @param ro 请求参数
     * @return
     */
    ResponseResultVO updateEnable(SysRoleResourceRO ro);


    /**
     * 查询角色权限列表
     *
     * @param id 角色id
     * @return
     */
    ResponseResultVO selectSysRoleResourceList(String id);

    /**
     * 查询角色详情
     *
     * @param id
     * @return
     */
    ResponseResultVO selectRoleById(String id);

    /**
     * 查询角色对应的用户列表
     *
     * @param id 角色id
     * @return
     */
    ResponseResultVO selectUserByRole(String id);


}
